#if !defined(__APP_MQTT_H)
#define __APP_MQTT_H

#define ADDRESS   "ws://192.168.16.45:1883"
#define CLIENTID  "b253ba38-daf6-4b37-984f-5d8fdc6a1cfa" 
#define TOPIC_RTG    "remote_to_gateway"//订阅主题
#define TOPIC_GTR    "gateway_to_remote"//发布主题
#define QOS     1
#define TIMEOUT   10000L

/**
 * @brief 初始化MQTT
 * 
 * @return int 初始化结果 0：成功 -1：失败
 */
int app_mqtt_init(void);

/**
 * @brief 反初始化MQTT
 * 
 */
void app_mqtt_deinit(void);

/**
 * @brief 发送MQTT消息
 * 
 * @param json json字符串
 * @return int 发送结果 0：成功 -1：失败
 */
int app_mqtt_sendMes(char *json);

/**
 * @brief 接收到MQTT消息的回调函数
 * 
 * @param callback 回调函数指针
 */
void app_mqtt_registerRecvCallback(int (*callback)(char *json));

#endif /* __APP_MQTT_H */